"""
编写一个函数 merge_sort_and_top，该函数接受两个元组和一个关键字参数 n（默认值为5）。
函数应返回一个新的元组，其中包含两个元组中的所有元素，并按升序排序，但只取前 n 个元素。

    例如：	result = merge_sort_and_top((7, 3, 10, 5), (6, 2, 8, 4), n=3)
            print(result) # 输出：(2, 3, 4)
"""


def merge_sort_and_top(tuple1, tuple2, n=5):
    combined_list = list(tuple1 + tuple2)  # 将两个元组合并为一个列表
    combined_list.sort()  # 对合并后的列表进行升序排序
    return tuple(combined_list[:n])  # 取前n个元素并转换回元组返回

result = merge_sort_and_top((7, 3, 10, 5), (6, 2, 8, 4), n=3)
print(result)


def merge_sort_and_top(tuple1, tuple2, n=5):
    if not isinstance(tuple1, tuple) or not isinstance(tuple2, tuple):
        raise ValueError("输入的参数必须是元组")
    if not isinstance(n, int) or n < 1:
        raise ValueError("参数n必须是正整数")

    combined_list = list(tuple1 + tuple2)
    combined_list.sort()
    return tuple(combined_list[:n])
